package com.sccba.emtbusiness.mapper;

import java.util.List;
import com.sccba.emtbusiness.domain.YjczHandleTimeLine;
import org.apache.ibatis.annotations.Param;

/**
 * 处理时间线记录Mapper接口
 * 
 * @author lichh
 * @date 2024-04-24
 */
public interface YjczHandleTimeLineMapper 
{
    /**
     * 查询处理时间线记录
     * 
     * @param pkId 处理时间线记录主键
     * @return 处理时间线记录
     */
    public YjczHandleTimeLine selectYjczHandleTimeLineByPkId(Long pkId);

    /**
     * 查询处理时间线记录列表
     * 
     * @param yjczHandleTimeLine 处理时间线记录
     * @return 处理时间线记录集合
     */
    public List<YjczHandleTimeLine> selectYjczHandleTimeLineList(YjczHandleTimeLine yjczHandleTimeLine);

    /**
     * 新增处理时间线记录
     * 
     * @param yjczHandleTimeLine 处理时间线记录
     * @return 结果
     */
    public int insertYjczHandleTimeLine(YjczHandleTimeLine yjczHandleTimeLine);

    /**
     * 修改处理时间线记录
     * 
     * @param yjczHandleTimeLine 处理时间线记录
     * @return 结果
     */
    public int updateYjczHandleTimeLine(YjczHandleTimeLine yjczHandleTimeLine);

    /**
     * 删除处理时间线记录
     * 
     * @param pkId 处理时间线记录主键
     * @return 结果
     */
    public int deleteYjczHandleTimeLineByPkId(Long pkId);

    /**
     * 批量删除处理时间线记录
     * 
     * @param pkIds 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteYjczHandleTimeLineByPkIds(Long[] pkIds);

    void batchInsertTimeLine (@Param("list") List<YjczHandleTimeLine> list);

    List<YjczHandleTimeLine> selectListByEventId (@Param("eventId") Long eventId);

    void deleteByEventId (@Param("eventId") Long eventId);

    void updateByPkId (YjczHandleTimeLine handleTimeLine);

    List<Integer> selectStateListByEventId (@Param("eventId") Long eventId);
}
